#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    // 获取定时器的id
    // 通过this开启定时器，并获取身份标识，传入时间间隔，也就是说每隔这段时间就会触发一次 timerEvent 函数
    timerId = this->startTimer(1000);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::timerEvent(QTimerEvent *event)
{
    // 如果一个程序中存在多个定时器 (startTimer 创建的定时器)，此时每个定时器都会触发 timerEvent 函数
    // 所以进入这个函数时，需要判断是否是我们想要的那个定时器
    if(event->timerId() != timerId) return;
    // 获取当前 lcd 的值
    int value = ui->lcdNumber->value();
    if(value == 0) return;
    ui->lcdNumber->display(value-1);
}

